1. Field of the Invention
This invention relates to computer systems, and more particularly, to diagnostic testing of memory systems.
2. Description of the Related Art
Computers and other electronic systems often undergo diagnostic routines. Diagnostic routines may be performed to ensure the functionality of various devices and interconnections within the system, and may also be used to isolate failing devices.
Memory subsystems are an integral part of computer system and many other types of electronic subsystems and are thus subject to diagnostic testing. In testing memory subsystems, it is desirable to have the ability to detect failures of individual memory devices, such as an individual DRAM (dynamic random access memory). In order to ensure that the failure of an individual memory device is detected, it is sometime necessary to apply a number of diagnostic patterns to the device. For at least some of these patterns, it is desirable that they include both a number of logic 1's and logic 0's.
Many memory subsystems include an error correction subsystem which may implement error correction codes (ECC). An ECC may generate one or more check bits that are associated with a data block. Error correction codes may be used to determine the presence of an error in a data block. Typical ECC subsystems may detect and correct single bit errors in a given memory block (SEC), and may also detect double bit errors in the memory block (DED). Some ECC subsystems may also include the capability of 4-bit nibble error detection (S4ED). In order to perform these error detection/correction functions, it may be necessary that bits from a given memory device are routed to different check words. In some cases however, the need to route bits from a given memory device to different check words may constrain the ability to assign bits for diagnostic routines. In particular, such constraints may in some cases result in bit assignments that result in diagnostic patterns where each bit assigned to a given memory device has the same logic value. Such diagnostic patterns may be unsatisfactory for detecting a failing memory device.